package com.ruibang.glass.quality.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruibang.glass.quality.domain.req.ArchiveDefectReq;
import com.ruibang.glass.quality.domain.req.EveryHourArchiveDefectReq;
import com.ruibang.glass.quality.domain.resp.ReinvestmentInfo;
import com.ruibang.glass.quality.entity.EveryHourArchiveDefect;
import com.teaming.cloud.framework2.common.pojo.PageRequest;
import com.teaming.cloud.framework2.common.pojo.PageResult;

import java.util.List;

/**
 * <p>
 * 每小时归档缺陷统计信息 服务类
 * </p>
 *
 * @author wujie
 * @since 2023-12-13
 */
public interface EveryHourArchiveDefectService extends IService<EveryHourArchiveDefect> {

    List<ReinvestmentInfo> getHourReinvestmentNum(ArchiveDefectReq archiveDefectReq);

    void deleteByParam(ArchiveDefectReq archiveDefectReq);


    /***
     * 分页查询每小时归档数据
     * @param pageRequest
     * @return
     */
    PageResult<EveryHourArchiveDefect> queryPage(PageRequest<EveryHourArchiveDefectReq> pageRequest);

    /***
     * 查询每小时归档数据列表
     * @param defectReq
     * @return
     */
    List<EveryHourArchiveDefect> queryEveryHourArchiveDefects(EveryHourArchiveDefectReq defectReq);

    List<EveryHourArchiveDefect> queryEveryHourByTime(ArchiveDefectReq archiveDefectReq);
}
